// 在JavaScript中，sort() 方法默认会按照字符串的Unicode码点顺序对数组元素进行排序，这意味着如果数组元素是数字，它们将被转换为字符串，然后按照字符串的顺序进行排序，这通常不是我们想要的数字排序方式。

// 当你提供了一个比较函数 (a, b) => a - b 给 sort() 方法时，你实际上是告诉JavaScript如何比较数组中的两个元素以确定它们的顺序。这个比较函数的工作方式如下：

// 比较函数 (a, b) => a - b：这个箭头函数接受两个参数 a 和 b，它们是要比较的数组元素。

// 执行减法操作：a - b 将执行两个元素的减法。如果 a 小于 b，结果将是负数，表示 a 应该排在 b 前面。如果 a 大于 b，结果将是正数，表示 b 应该排在 a 前面。如果 a 等于 b，结果将是0，表示它们的顺序不变。

// 排序逻辑：

// 如果 a - b 的结果是负数，sort() 方法将 a 放在 b 前面。
// 如果 a - b 的结果是正数，sort() 方法将 b 放在 a 前面。
// 如果 a - b 的结果是0，a 和 b 的相对位置保持不变。
// 这个比较函数实现了数字的自然顺序排序，即从小到大。这是因为减法操作能够反映两个数字之间的大小关系，并且 sort() 方法根据这个关系来调整数组元素的位置。

const arr = [1, 23, 5, 235, 2, 331, 234];

arr.sort((a, b) => a - b);

console.log(arr);
